iT邦幫忙

2024 iThome 鐵人賽

DAY 22
1
Security

資安與開源:面對威脅探索系列 第 22

Day 22 - 認識 SSH 了解遠端伺服器管理、檔案傳輸和加密

  • 分享至 

  • xImage
  •  

前言

SSH(Secure Shell)是一種加密通訊協定,在不安全的網路環境中安全進行服務操作
在我們深入探討之前,請花 30 秒的時間思考一下:在你們心中,SSH 的核心意義是什麼?它的主要功能又是什麼呢?

SSH 的核心概念

為了幫助大家更好理解,我製作了一個心智圖SSH 的核心概念:
https://ithelp.ithome.com.tw/upload/images/20241001/20135755wMjEYn6IwH.png

心智圖主要組成部分:
1. 遠端伺服器:連線和管理遠端伺服器,我們在不需要接觸實體伺服器的情況下進行操作
2. 檔案傳輸:透過 SCP 和 SFTP 來進行檔案傳輸
3. 自動化:透過腳本實現自動化操作,提升工作效率
4. 系統管理:遠端管理系統的功能,例如:檢查日誌、系統維護、更新系統等

SSH 使用的加密技術

對稱加密(Symmetric Encryption):

  • 定義:使用相同的金鑰進行加密和解密
  • 加密: DES(已經過時,不安全,金鑰長度56位元容易被暴力破解)、AES、3DES
  • 用途:在成功建立連線後,對稱加密用於加密傳輸中的資料,確保資料在傳輸過程中不被第三方讀取
    https://ithelp.ithome.com.tw/upload/images/20241001/20135755UXL3YHB1wg.png

非對稱加密(Asymmetric Encryption):

  • 定義:使用一對金鑰來加密和解密資料
  • 加密:RSA、ECDSA
  • 作用:主要用於身份和金鑰交換,確認伺服器與使用者之間
    https://ithelp.ithome.com.tw/upload/images/20241001/20135755ZmQZpoww4i.png

雜湊(Hash):
注意:雜湊不是加密!

  • 定義:使用雜湊函式將資料轉換成固定長度
  • 加密:SHA-256
  • 作用:在 SSH 中,雜湊用於驗證資料的完整性,以確保在傳輸過程中資料未遭到篡改
    https://ithelp.ithome.com.tw/upload/images/20241001/20135755SjratoSnXe.png

SSH 如何連線呢?

接下來,讓我們來看一下 SSH 的連線過程如何進行加密:
https://ithelp.ithome.com.tw/upload/images/20241001/201357556zBXxzbSY3.png

  1. 首次登入時產生金鑰
    • 伺服器:
      在安裝或首次啟動 SSH 服務時,伺服器會生成一對金鑰(公鑰和私鑰),並將公鑰儲存在伺服器端的 /etc/ssh/ 目錄中
  2. PC連線
    PC 透過 SSH 發起連線請求,並將連線請求發送至伺服器的 IP
  3. 伺服器公鑰
    伺服器會將公鑰傳送給電腦,電腦利用這個公鑰來驗證伺服器的身份
  4. 使用者公鑰驗證
    • 如果伺服器的公鑰是首次出現,PC 會提示使用者確認該公鑰
      https://ithelp.ithome.com.tw/upload/images/20241001/20135755a67tDPOlzo.png
  • 使用者可以檢查公鑰,確認是否合法,並決定是否接受,該公鑰將會被儲存在 known_hosts 檔案中

結語

我們今天介紹 SSH 的運作原理、加密技術,以及如何建立連線
希望這些資訊能幫助大家對 SSH 有更深入的理解
明天我們將討論如何修改 SSH Port,以進一步增強安全性,敬請期待!


上一篇
Day - 21 開源軟體 Bitwarden 複習與總結
下一篇
Day 23 - 提升伺服器安全性:修改 SSH Port
系列文
資安與開源:面對威脅探索30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言